#include "my_arm_math.h"

float arr_dect[12];
// void mat_trans(int width,int height,uint8_t *datas)
// {
//     int i=0,j=0;
//     for(j=0;j<height;j++){
//         for(i=0;i<width;i++){
//           int temp_index=j+i*height/8;
//           int src_index=i+j*width;
//           temp_mat[temp_index]=src_index;
//         }
//     }
//     memcpy(datas,temp_mat,width*height);
//     free(temp_mat);
// }

void list_cpy(float * datas1,float * datas2,int size)
{
    for(int i=0;i<size;i++){
        datas1[i]=datas2[i];
    }
}

void mat_mul(float mat1[],int row1,int col1,float mat2[],int row2,int col2,float *outs)
{
    int i,j,k;
    float * mat_temp=(float *)malloc(sizeof(float )*col1*row2);
    for(i=0;i<row1;i++){
        for(j=0;j<col2;j++){
            float temp=0;
            for(k=0;k<col1;k++){
                temp+=mat1[i*col1+k]*mat2[k*col2+j];
            }
            mat_temp[i*col2+j]=temp;
        }
    }
    list_cpy(outs,mat_temp,row1*col2);
    free(mat_temp);
}
